\chapter{Manual de usuario}
\ifpdf
    \graphicspath{{Appendix2/Appendix2Figs/PNG/}{Appendix2/Appendix2Figs/PDF/}{Appendix2/Appendix2Figs/}}
\else
    \graphicspath{{Appendix2/Appendix2Figs/EPS/}{Appendix2/Appendix2Figs/}}
\fi

\section{Uso desde la consola}

Para usar el programa desde la consola se debe ejecutar:

\begin{verbatim}
dejumble [punto_de_montaje] [-o opción1=valor1,opción2=valor2,...]
\end{verbatim}

El \textit{punto\_de\_montaje} es el directorio donde se va a montar el sistema de archivos. Se pueden usar las siguientes opciones:

\begin{itemize}
\item[filter] Define que filtro va a ser usado. Este valor debe ser un paquete de Python válido que exista dentro del paquete dejumblefs.filters. Dentro de este paquete debe existir una clase que tenga ese nombre agregando FileListFilter. Su valor por defecto es \textit{OriginalDirectory}.
\item[root] Define el directorio base, el directorio original, sobre el cual se va a ejecutar el filtrado. Su valor por defecto es el directorio donde se va a montar. En caso de que no se modifique \textit{root} en linux se debe usar el parámetro \textit{nonempty} para que el sistema de archivos pueda acceder al sistema de archivos original.
\item[query] Define el query que va a ejecutar el filtro.
\item[cache] Define que cache va a ser usado. Este valor debe ser un paquete de Python válido que exista dentro del paquete dejumblefs.caches. Dentro de este paquete debe existir una clase que tenga ese nombre agregando Cache. Su valor por defecto es \textit{PassThrough}.
\item[organizer] Define que organizador va a ser usado. Este valor debe ser un paquete de Python válido que exista dentro del paquete dejumblefs.organizers. Dentro de este paquete debe existir una clase que tenga ese nombre agregando Organizer. Su valor por defecto es \textit{Original}.
\item[nonempty] Permite en linux que el sistema de archivos pueda acceder al sistema de archivos original.
\item[noappledouble] Evita que el sistema de archivos proxy reciba llamadas del sistema de archivos OS X de Apple acerca de archivos especiales encontrados en volúmenes de archivos normales. Esto incrementa ligeramente el desempeño en este sistema operativo.
\end{itemize}

Existen otras opciones que son propias de FUSE. Una lista se puede obtener en la página \url{http://code.google.com/p/macfuse/wiki/OPTIONS}. Esta información también se la puede obtener ejecutando:

\begin{verbatim}
dejumble --help
\end{verbatim}

\subsection{Ejemplos}

\begin{verbatim}
dejumble punto_de_montaje -o nonempty

dejumble punto_de_montaje -o filter="Null",nonempty

dejumble punto_de_montaje -o filter="OriginalDirectory" \
                          -o organizer="Documents" \
                          -o nonempty

dejumble punto_de_montaje -o root="~/Music" \
                          -o query="find ~/Music/ -name *.mp3" \
                          -o filter="Shell" \
                          -o organizer="Flat" \
                          -o nonempty
\end{verbatim}


\section{Uso de la interfaz visual}

Para usar la interfaz visual del programa se debe ejecutar:

\begin{verbatim}
dejumblegui
\end{verbatim}

Se puede también escoger la aplicación \textit{DejumbleFS Mounter} del manejador de aplicaciones del sistema operativo. La interfaz visual permite montar un sistema de archivos tal como lo hace la interfaz de línea de comando con las opciones específicas indicadas anteriormente pero no permite usar opciones arbitrarias de FUSE.

\InsertFig{\IncludeGraphicsH{guiosx}{3.2in}{92 86 545 742}}{Interfaz visual en el sistema operativo OS X}{guiosx}

Esta interfaz es multi-plataforma. Se la puede usar en cualquier sistema operativo que tenga Python.

% ------------------------------------------------------------------------

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: "../thesis"
%%% End: 
